package com.bigdata.service.service;

import com.bigdata.service.domain.Datasets;
import com.bigdata.service.domain.vo.DatasetsVo;
import com.bigdata.service.domain.bo.DatasetsBo;
import com.bigdata.common.core.page.TableDataInfo;
import com.bigdata.common.core.domain.PageQuery;

import java.util.Collection;
import java.util.List;

/**
 * 数据集主Service接口
 *
 * @author ruoyi
 * @date 2025-07-15
 */
public interface IDatasetsService {

    /**
     * 查询数据集主
     */
    DatasetsVo queryById(String id);


    /**
     * 查询数据集主
     */
    DatasetsVo queryDetailsById(String id);

    /**
     * 查询数据集主列表
     */
    TableDataInfo<DatasetsVo> queryPageList(DatasetsBo bo, PageQuery pageQuery);

    /**
     * 查询数据集主列表
     */
    List<DatasetsVo> queryList(DatasetsBo bo);

    /**
     * 新增数据集主
     */
    Boolean insertByBo(DatasetsBo bo);

    /**
     * 修改数据集主
     */
    Boolean updateByBo(DatasetsBo bo);
    Boolean updateDatasetsByBo(DatasetsBo bo);
    Boolean updateDowByBo(DatasetsBo bo);


    /**
     * 校验并批量删除数据集主信息
     */
    Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid);

    /**
     * 查询数据集主数量
     */
    Long queryCategoriesNum(String id);
}
